import type {
  AxiosResponse,
  InternalAxiosRequestConfig,
  AxiosRequestConfig,
} from "axios";
export interface IAxiosConfig<T = AxiosResponse> extends AxiosRequestConfig {
  interceptors?: IInterceptors<T>;
}

interface IInterceptors<T = AxiosResponse> {
  requestInterceptor?: (config: AxiosRequestConfig) => AxiosRequestConfig;
  requestInterceptorError?: (err: any) => any;
  responseInterceptor?: (res: T) => T;
  responseInterceptorError?: (err: any) => any;
}
